A data network switch permits data communication among a plurality of media stations in a local area network. Data frames, or packets, are transferred between stations by means of data network switch media access control (MAC) enabling network interface cards or circuitry at each switch port. The MAC supervises transmission of data traffic from the port to the network, the reception of data traffic at the port from the network, and mediates data traffic at the port to avoid collisions. The network switch passes data frames received from a transmitting station to a destination station based on the header information in the received data frame. Transmit and receiver buffers at each port are coupled to the MAC. Depending upon mode of operation, an incoming packet, temporarily held in a port receive buffer, may be moved to memory external to the switch for later transmission or placed in the transmit buffer of the appropriate port for immediate transmission out to the network.
Packet transmission events typically are tracked to provide a basis for statistical analysis of network operation with respect to each data network switch port. For example, the number of transmitted packets, received packets, transmission collisions and the like can be counted and polled periodically. Through the use of statistical counters, determination can be made of improper device operation such as, for example, loss of packets. Typically, each MAC unit may include a receive state machine and a transmit state machine having internal counters of limited capacity for counting a small number of transmission event parameters for each frame that traverses the respective switch port. Flip-flops, dedicated to the particular parameters, are respectively incremented each time an item in that frame is identified. For each incoming frame, which may be temporarily stored in a receive FIFO buffer, the respective flip-flops in the receive state machine are read and the resulting data are appended to the frame. For outgoing frames, similar processing takes place. Thus, the outgoing frame, transitionally stored in a transmit FIFO buffer, contains appended data relating to the receipt operation and transmit operation. The transmit operation data is added when the frame is transmitted out from the transmit FIFO buffer.
As data networks become more robust and data traffic increases, additional operational parameters become significant. Tracking a greater number of parameters requires increased MAC complexity involving, for example, the provision of more registers and supporting logic elements, as well as larger buffer capacities. Integration of these additional elements for each MAC on the switch logic chip places a burden on chip architecture. As switch development evolves greater traffic flow capacities and the number of switch ports increase, efficient use of chip architecture becomes even more critical.